Method and system for inter-group communication in a wireless p2p network

ABSTRACT

A method includes the steps of: disconnecting a first device included in a first P2P group from the first P2P group so that the first device joins to a second P2P group; and in synchronization with the first device switching to the second P2P group, disconnecting a second device included in the second P2P group from the second P2P group so that the second device joins to the first P2P group.

TECHNICAL FIELD

The present invention generally relates to techniques of communicationbetween devices and in particular to a method, an apparatus and systemfor inter-group communication in wireless peer-to-peer (P2P) networks.

BACKGROUND ART

In contrast to the traditional infrastructure mode of Wi-Fi, therecently released standard Wi-Fi Peer to peer (P2P), which is also knownas Wi-Fi Direct, sheds off the need for a specialized hardware to act asAccess Point. Wi-Fi P2P Technical Specification Version 1.4 (NPL1)states the provision that allows any Wi-Fi P2P device to take up therole of P2P Group Owner (analogous to Access Point of Wi-Fiinfrastructure mode). Before starting data communication amongthemselves, a pair of Wi-Fi P2P devices discovers each other andnegotiates to decide the device that will act as P2P Group Owner (P2PGO). After that the security keys are exchanged and a Wi-Fi P2P group isestablished. The P2P GO can then add more devices to its group as P2PClient (analogous to STA in traditional Wi-Fi infrastructure mode). TheP2P Clients connect to the P2P GO according to a star topology whereinthe P2P GO routes packets from one P2P Client to another. In thisdisclosure, a Wi-Fi P2P group which has lesser number of P2P Clientsthan its maximum supportable size (or some other threshold size) hasbeen referred to as an unsaturated group. Alternatively, a Wi-Fi P2Pgroup with group size equal to the maximum supportable size (or, greateror equal to some threshold size) has been referred to as a saturatedgroup.

CITATION LIST Non Patent Literature

-   [NPL 1]-   Wi-Fi Peer-To-Peer (P2P) Technical Specification Version 1.4

SUMMARY Technical Problem

Wi-Fi Direct operates in a group structure, where one node assumes therole of the leader (called Group Owner or P2P GO in Wi-Fi P2Pterminology) and other group members stay connected to the GO as P2PClients. Peer to peer communication in Wi-Fi Direct is defined withinthe group. Accordingly, content delivery to a large number of nodes in awide area using Wi-Fi Direct is a technical challenge as a largegathering of Wi-Fi P2P devices would result into several isolated Wi-FiP2P group formations, requiring communication outside the group.

Inter-group communication in multi-group P2P network may be facilitatedby concurrent operation. In concurrent operation, a node can maintainsimultaneous connections with more than one group by using multiplephysical or virtual radio interfaces. Thus, a node performing concurrentoperation may route packets from one P2P group to another P2P groupwhich enables inter-group communication. However, the concurrentoperation requires a device to support multiple physical or virtualMedium Access Control (MAC) interfaces. Such multiple physical orvirtual MAC interfaces may not be supported by all devices. However,communication outside the group is not possible using a singlephysical/logical MAC entity. Accordingly, it is a technical challengefor nodes in one Wi-Fi P2P group to perform inter-group communicationusing a single physical or logical MAC interface.

An object of the present invention is to provide a mechanism which canachieve inter-group communication in a multi-group Wi-Fi P2P network.

Solution to Problem

According to the present invention, a method of operating a wirelesspeer-to-peer (P2P) network including a plurality of P2P groups,comprising: disconnecting a first device included in a first P2P groupfrom the first P2P group so that the first device joins to a second P2Pgroup; and in synchronization with the first device switching to thesecond P2P group, disconnecting a second device included in the secondP2P group from the second P2P group so that the second device joins tothe first P2P group.

According to the present invention, a system for operating a wirelesspeer-to-peer (P2P) network including a plurality of P2P groups, whereina first device included in a first P2P group disconnects from the firstP2P group so that the first device joins to a second P2P group; and asecond device included in the second P2P group, in synchronization withthe first device switching to the second P2P group, disconnects from thesecond P2P group so that the second device joins to the first P2P group.

Advantageous Effects of Invention

According to the present invention, inter-group message transfer will bepossible in a multi-group wireless P2P network with synchronizedswitching between multiple switching devices.

In addition, other obvious and apparent advantages of the invention willbe reflected from the detailed specification and drawings.

The invention accordingly comprises the several steps and the relationof one or more of such steps with respect to each of the others, and theapparatus embodying features of construction, combinations of elementsand arrangement of parts that are adapted to affect such steps, all isexemplified in the following detailed disclosure, and the scope of theinvention will be indicated in the claims.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 is a schematic diagram showing an example of a wirelesspeer-to-peer (P2P) group in order to describe inter-group communicationaccording to exemplary embodiments of the present invention.

FIG. 2 is a block diagram showing the functional configuration of a nodeaccording to the exemplary embodiments of the present invention.

FIG. 3 is a diagram showing two wireless P2P groups operating in eachother's transmission range for explaining inter-group communicationaccording to a first exemplary embodiment of the present invention.

FIG. 4 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 5 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 6 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 7 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 8 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 9 is a diagram illustrating the operation of triggering-triggeredmechanism for explaining inter-group communication according to thefirst exemplary embodiment of the present invention.

FIG. 10 is a sequence diagram showing the node switching operations ofthe triggering-triggered mechanism in the inter-group communicationaccording to the first exemplary embodiment of the present invention.

FIG. 11 is a sequence diagram showing the node return switchingoperations of the triggering-triggered mechanism in the inter-groupcommunication according to the first exemplary embodiment of the presentinvention.

FIG. 12 is a flowchart showing the sequence of events at the triggeringand triggering switching devices according to the first exemplaryembodiment of the present invention.

FIG. 13 is a diagram showing multiple pairs of triggering and triggeredswitching devices between a first P2P group and a second P2P groupaccording to a second exemplary embodiment of the present invention.

FIG. 14 is a diagram illustrating an independent operation of first andsecond pairs of triggering and triggered switching devices according tothe second exemplary embodiment of the present invention.

FIG. 15 is a diagram illustrating a scheduled operation of first andsecond pairs of triggering and triggered switching devices according toa third exemplary embodiment of the present invention.

DETAILED DESCRIPTION

Hereinafter, the word “exemplary” is used herein to mean “serving as anexample, instance or illustration”. Any embodiment described herein as“exemplary” is not necessarily to be construed as preferred oradvantageous over other embodiments.

1. Outline of Exemplary Embodiments

The technical problems as discussed above can be solved by one or manyvariants of the exemplary embodiments. Specifically, the disclosureintroduces a synchronized switching mechanism of multiple switchingdevices between different groups.

Switching mechanism can be used for inter-group message transfer even ifdevices support a single MAC interface. In switching operation, theinter-group message transfer may be achieved by disconnecting a P2Pclient device from a first P2P group, connecting to a second P2P groupto transfer data packets, and then returning back to the first group.Thus, by iterative switching operation which may be performed byrepeated connection and disconnection between two or more P2P groups,message can be continuously shared between a pair of P2P groups.

1.1) First Exemplary Embodiment

Inter-group communication according to a first exemplary embodiment ofthe present invention may use a mechanism wherein a device which is aclient of a first P2P group is selected as a switching device to performthe switching operation between the first P2P group and the second P2Pgroup. The first switching device disconnects from the first P2P groupand sends a connection request to the group owner device of the secondP2P group. On receiving the connection request from the first switchingdevice, the P2P group owner device of the second P2P group instructs aclient of the second P2P group to immediately disconnect its client as aswitching device from the second P2P group and instructs it to join thefirst P2P group. When the group owner device of the second P2P groupaccepts the connection request of the first switching device and thegroup owner device of the first P2P group accepts the connection requestof the second switching device, the first switching device performsmessage exchange within the second P2P group and the second switchinggroup performs message exchange within the first P2P group.

After some time, the first switching device disconnects from the secondP2P group and sends a connection request to the first P2P group. Onreceiving the connection request from the first switching device, theP2P group owner device of the first P2P group immediately disconnectsthe second switching device from the first P2P group and instructs it tojoin the second P2P group.

As described above, a tight synchronization can be achieved between thefirst and second switching devices. Also, such synchronization may bemanaged by only one of the first and second switching devices. In theexample described above, the first switching device triggers theswitching event of the second switching device. Thus the first switchingdevice acts as the triggering device and the second switching deviceacts as the triggered device. The number of switching events per unitinterval of time can be managed by the triggering device; the triggereddevice would follow the trigger from the triggering device and switchaccordingly.

1.2) Second Exemplary Embodiment

Inter-group communication according to a second exemplary embodiment ofthe present invention may use multiple pairs of triggering-triggeredswitching devices between a first P2P group and a second P2P group. Eachpair of triggering-triggered switching devices may operate independentlyof each other. Thus, a first pair of triggering-triggered switchingdevices may perform switching at a specific switching frequency (numberof switching events happening in per unit interval of time) and a secondpair of triggering-triggered switching devices may perform switching ata different switching frequency.

1.3) Third Exemplary Embodiment

Inter-group communication according to a third exemplary embodiment ofthe present invention may use multiple pairs of triggering-triggeredswitching devices between a first P2P group and a second P2P group. Eachpair of triggering-triggered switching devices may operate insynchronization with each other. For instance, a first pair oftriggering-triggered switching devices performs one switching event anda second pair of triggering-triggered switching devices is instructed toperform the next switching event between a pair of P2P groups. Theschedule of switching for each triggering-triggered pair may be preparedby the P2P group owner of one of the first or second P2P groups.

In the above-described embodiments, the first switching device may sharethe security credential of the first P2P group with the second P2P groupsuch that the second switching device can use the credential to join thefirst P2P group. The first switching device may share the securitycredential of the first P2P group with the second P2P group in theconnection request from first switching device to the second P2P groupowner device. The credential may be shared by the P2P group owner deviceof the second P2P group with the second switching device. The secondswitching device may then use the credential to connect to the groupowner device of the first P2P group.

1.5) Advantageous Effects

As described above, according to the exemplary embodiments of thepresent invention, it will be possible to transfer messages betweenmultiple P2P groups. Such inter-group message transfer can be achievedby switching devices which may switch connection between a first P2Pgroup and a second P2P group. According to the disclosed exemplaryembodiments, it will be possible to achieve tight synchronizationbetween a first switching device from the first P2P group and a secondswitching device from the second P2P group. Such tight synchronizationmay be useful especially in case of switching among saturated groups. Asaturated group has the maximum number of clients that can be supportedin that group, thus accepting a new connection is not possible for theP2P group owner device unless the P2P group owner device disconnects oneof the existing clients. Thus a triggering switching device from a firstP2P group would trigger the P2P group owner device of the second P2Pgroup to disconnect a second switching device from the second P2P group.The process repeats in a cyclic and synchronized manner such that thetriggering and triggered switching devices never connect to the samegroup at the same time. In addition, multiple such triggering-triggeredpairs of switching devices may be used between a pair of P2P groups,independently or following a schedule.

2. System Configuration

Hereinafter, exemplary embodiments of the present invention will bedescribed taking a system based on W-Fi Direct Standard as an example.The exemplary embodiments are discussed in its complete details withaccompanying figures and finally explained with a typical examplescenario.

Referring to FIG. 1, it is assumed that exemplary Wi-Fi Direct groups 10and 20 are operating in each other's transmission range. The group 10includes a plurality of nodes 101-104, wherein the node 101 operates asa Group Owner (GO) and other nodes 102, 103 and 104 operate asassociated Clients, respectively. Once the group 10 is formed, the GOnode 101 may play a role analogous to that of an access point in a Wi-Fiinfrastructure mode operation. The group 20 also includes a plurality ofnodes composed of a GO node and Client nodes. The GO nodes and selectedClient nodes in the groups 10 and 20 are capable of performinginter-group communication according to the exemplary embodiments, whichwill be described later.

Referring to FIG. 2, a node is composed of a radio communication devicecapable of performing communications in a Peer to Peer group accordingto one or more exemplary embodiments of the present invention. Itrepresents any one of the nodes included in the groups 10 and 20. Invarious implementations, the radio communication device may be apersonal computing device (e.g., smart phone, computing tablet, personalcomputer, laptop computer, Personal Digital Assistant (PDA), etc.). Thenodes 101˜104 have the same configuration but may operate as GO orClient. The node includes the following functionalities: a radio system201, a user controller 202, a processor 203 and a memory 204. The radiosystem 201 includes a Wi-Fi Direct communication function. The usercontroller 202 controls Wi-Fi Direct connection procedures such asDevice Discovery, GO Negotiation, Provisional Service Discovery andInvitation Mechanism etc. The processor 203 can execute the operatingsystem and applications stored in the memory 204 or a separate storagedevice such as a semiconductor memory according to the presentembodiment. The processor 203 controls the operations of the nodeincluding GO operation, Client operation and a switching device used forinter-group communication according to the exemplary embodiments.

The memory 204 may include a system memory component (e.g, RAM), astatic storage component (e.g., ROM), and/or a disk drive. The nodeperforms specific operations by processor 203 and other components byexecuting one or more sequences of instructions contained in the systemmemory component. Logic may be encoded in a computer readable medium,which may refer to any medium that participates in providinginstructions to processor 203 for execution. Such a medium may take manyforms, including but not limited to, non-volatile media, volatile media,and transmission media. In various implementations, non-volatile mediaincludes optical, or magnetic disks, or solid-state drives, volatilemedia includes dynamic memory, such as system memory component, andtransmission media includes coaxial cables, copper wire, and fiberoptics, including wires that comprise bus. In one embodiment, the logicis encoded in non-transitory computer readable medium. In one example,transmission media may take the form of acoustic or light waves, such asthose generated during radio wave, optical, and infrared datacommunications.

Some common forms of computer readable media includes, for example,floppy disk, flexible disk, hard disk, magnetic tape, any other magneticmedium, Compact Disc (CD) Read-Only Memory (ROM), any other opticalmedium, punch cards, paper tape, any other physical medium with patternsof holes, Random-Access Memory (RAM), Programmable ROM (PROM),Electrically Erasable Programmable ROM (EEPROM), FLASH-EEPROM, any othermemory chip or cartridge, or any other medium from which a computer isadapted to read.

3. First Exemplary Embodiment

Referring to FIGS. 3-12, inter-group data transfer according to thefirst exemplary embodiment of the present invention will be described indetails.

3.1) System Operation

As illustrated in FIG. 3, it is assumed that two Wi-Fi P2P groups 10 and20 are operating in each other's transmission range. Node 101 is the P2PGO of group 10. Node 102, 103 and 104 are P2P Clients of group 10 whichare connected to the P2P GO 101. Node 201 is the P2P GO of group 20.Node 202 and 203 are P2P Clients of group 20 which are connected to theP2P GO 201. To enable inter-group communication between the P2P group 10and the P2P group 20, the node 104 of the P2P group 10 may be selectedas a first switching device to switch connection between the P2P groups10 and 20 (Operation S301). Node 104 can be selected as a switchingdevice among all nodes in the P2P group 10 according to a criterionincluding, but not limited to, at least one of:

-   1. Node 104 receives the highest Received Signal Strength Indicator    (RSSI) from the P2P GO node 201 of the P2P group 20.-   2. Node 104 meets at least one of predefined criteria on memory, CPU    speed, residual power, time to stay in the network etc.-   3. Node 104 is not performing switching with any other neighboring    group.-   4. Node 104 is the node with minimum average packet exchange (packet    sending and receiving) among all nodes in the P2P group 10.

Referring to FIG. 4, the selected node 104 as the first switching devicedisconnects from the P2P GO 101 of P2P group 10 and sends a connectionrequest for inter-group communication to the P2P GO 201 of P2P group 20(Operation S302). The connection request may include some specificinformation so as to inform the P2P GO 201 that it is a connectionrequest for inter-group communication. Such specific information mayinclude at least one of the P2P group 10's identification number, GO101's identification number or some flag bit indicating that it is aninter-group switching node. Such information may be included in theVendor Specific Attribute field of the connection request.Alternatively, it is possible for the P2P GO 101 to inform the P2P GO201 about the impending inter-group connection request from the node104.

When receiving the connection request from the first switching device104, the P2P GO 201 selects one of Client nodes of the P2P group 20 as asecond switching device. When the node 202 is selected as the secondswitching device, the P2P GO 201 instructs the second switching device202 to join the group 10 (Operation 303). Then, the P2P GO 201disconnects the second switching device 202 and accepts the connectionrequest of the first switching device 104. Alternatively, the P2P GO 201may ask the node 202 to disconnect from the P2P GO 201. In anothervariant, it is also possible that the P2P GO 201 first accepts theconnection request from the first switching device 104 and thendisconnects the second switching device 202.

One possible implementation using wpa_supplicant v2.3 which is a Wi-FiDirect implementation for Linux Operating System will be described. TheP2P Client node 104 which may be using an interface named “wlan0” mayuse a command “p2p_group_remove wlan0” to disconnect from the P2P GOnode 101 of the P2P group 10. After disconnecting from the group 10, thenode 104 may perform P2P Device Discovery to find the P2P GO 201 of P2Pgroup 20 using a command “p2p_find”. However, there can be instanceswhen the node 104 may not perform P2P Device Discovery. After that, thenode 104 may use a command “p2p_connect” to send a connection request tothe P2P GO 201 by including the necessary information for switching inthe vendor specific attribute. One example of inclusion of informationmay be done by modifying the configuration file of Wi-Fi Direct.However, there can be other methods for including information in theconnection request from node 104; the present invention does not limitto any single method and should be construed to include any such method.If the security credential of the P2P group 20 is known to the node 104,it may also use a command like “p2p_invite” to connect to the P2P GO 201by using persistent mechanism.

The reception of the connection request by the P2P GO 201 from the node104 may act as a trigger to disconnect the node 202. When the P2P GO 201receives the connection request from node 104 (assuming “p2p_connect” isused at node 104) according to the exemplary implementation describedabove, it may be seen as an event message “P2P-PROV-DISC-PBC-REQ” ifpush-button control (PBC) method is used. P2P GO 201 may accept theconnection request using a command “wps_pbc any”; then an event message“AP-STA-CONNECTED” may be seen at P2P GO 201. In case “p2p_invite” isused by node 104 to connect to P2P GO 201 by using persistent mechanism,then the event message “AP-STA-CONNECTED” may be seen at P2P GO 201after connection establishment with node 104. After this event messageis seen, the P2P GO 201 may ask the node 202 to disconnect. In a similarfashion as explained before, the node 202 may also use a command“p2p_group_remove wlan0” to disconnect from the P2P GO node 201 of P2Pgroup 20. After disconnecting from group 20, the node 202 may or may notperform P2P Device Discovery to find the P2P GO 101 of P2P group 10. Asexplained earlier, the node 202 may also use a command “p2p_connect” tosend connection request to the P2P GO 101 by including the necessaryinformation for switching in the vendor specific attribute.Alternatively, the node 202 may use the command “p2p_invite” to connectto P2P GO 101 by persistent mechanism.

After connecting to the P2P GO 201, the node 104 may exchange data withat least one node of P2P group 20. Similarly, after connecting to theP2P GO 101, the node 202 may exchange data with at least one node in P2Pgroup 10 and wait for the trigger to switch back to the P2P group 20. Itmay be noted that the node 202 may stay connected to the P2P group 10 aslong as there is no trigger from the triggering node 104. The node 104may start a timer right after joining the P2P group 20; when timeouthappens, the node 104 may disconnect from the P2P GO 201 using thecommand “p2p_group_remove wlan0” and send a connection request to theP2P GO 101 by using at least one of the commands “p2p_connect” or“p2p_invite”. As explained before, on receiving at least one of theevent message “P2P-PROV-DISC-PBC-REQ” or “AP-STA-CONNECTED” with thenode 104, the P2P GO 101 may instruct the node 202 to disconnect andswitch back to the P2P group 20. Thus, the process may repeatiteratively.

The switching mechanism can be controlled solely by controlling thetriggering node; the triggered node only waits for the trigger and actsaccordingly. Thus synchronization is achieved in the switching processin a simple yet effective manner. It may be noted that when connectingusing “p2p_invite” by persistent mechanism, the connection establishmenttime will be reduced as compared to connecting by “p2p_connect” becausethe credentials are re-used in persistent mechanism. The description inthis paragraph is merely one example of implementation, various commandsin wpa_supplicant and wpa_cli may be used in many other combinations toachieve the same objective.

Referring to FIG. 5, after disconnecting from the P2P GO 201, the secondswitching device 202 sends a connection request to the P2P GO 101 andjoins the P2P group 10 (Operation S304). Thus the second switchingdevice 202 is triggered to leave the group 20 and switches to the group10 when the first switching device 104 sends the connection request tothe P2P GO 201 of P2P group 20.

Referring to FIG. 6, the first switching device 104 connects to the P2PGO 201 of P2P group 20 and the second switching device 202 connects tothe P2P GO 101 of P2P group 10. After connecting to the P2P GO 201, thefirst switching device 104 can exchange data with at least one node ofthe P2P group 20 (Operation S306-20). Similarly, after connecting to theP2P GO 101, the second switching device 202 can exchange data with atleast one node of the P2P group 10 (Operation S306-10).

Referring to FIG. 7, after some time interval, the first switchingdevice 104 disconnects from the P2P GO 201 and sends a connectionrequest to the P2P GO 101 (Operation S307). After receiving theconnection request from the first switching device 104, the P2P GO 101instructs the second switching device 202 to join the P2P group 20 andsubsequently disconnects it. Alternatively, the second switching device202 may disconnect from the P2P GO 101 by itself.

Referring to FIG. 8, the P2P GO 101 accepts the connection request fromthe first switching device 104. After having disconnected from the P2PGO 101 of the P2P group 10, the second switching device 202 sends aconnection request to the P2P GO 201 of P2P group 20 (Operation S308).Thus, the first switching device 104 triggers the switching of thesecond switching device 202. Hence, the first switching device 104 actsas the triggering switching device and the second switching device 202is the triggered switching device in this example. The triggeringswitching device may increase or decrease the number of switching in perunit interval of time. The triggered switching device only waits for thetrigger and switches accordingly. Thus the tight synchronization isachieved between the first and second switching devices 104 and 202.Also, with two devices switching together, higher amount of data can beshared between the first P2P group 10 and the second P2P group 20.

Referring to FIG. 9, when the P2P GO 101 accepts the connection requestfrom the first switching device 104 and the P2P GO 201 accepts theconnection request from the second switching device 202, the firstswitching device 104 can exchange messages with at least one device inthe P2P group 10 (Operation S309) and the second switching device 202canexchange messages with at least one device in the P2P group 20(Operation S310).

FIGS. 10 and 11 show an exemplary sequence of the operations asdescribed in FIGS. 3-9. Accordingly, the sequence will be describedbriefly.

Referring to FIG. 10, in the case where the node 104 of the group 10 isselected as a first switching device to switch (Operation S401), the GOnode 101 may instruct the selected node 104 to disconnect from the group10 and connect to the GO node 201 of the group 20 (Operation S402).According to the instruction, the node 104 disconnects from the group 10(Operation S403) and sends a connection request as a trigger to the GOnode 201 of the group 20 (Operation S404). The connection request fromthe first switching device (node 104) triggers the GO node 201 to startinter-group communication procedure. More specifically, when receivingthe connection request from the node 104 (first switching device), theGO 201 accepts it, sends acknowledgement back to the node 104(Operations S405 and S406). When receiving the connectionacknowledgement, the first switching device (node 104) joins the group20 (Operation S407) and starts a disconnection timer, which allows thenode 104 to exchange data within the group 20 (Operation S408).Paralleling the joining operations of the first switching device (node104) in the group 20, the GO node 201 selects the node 202 as a secondswitching device which is one of its client nodes of the group 20 andinstructs the selected node 202 to disconnect the group 20 and to jointhe group 10 (Operation S409). According to the instruction, the node202 disconnects from the group 20 (Operation S410) and sends aconnection request to the GO node 101 of the group 10 (Operation S411).The GO 101 accepts it, sends acknowledgement back to the node 202(Operations S412 and S413). When receiving the connectionacknowledgement, the second switching device (node 202) joins the group10 (Operation S414), which allows the node 202 to exchange data withinthe group 10 (Operation S415). In another variant, it is also possiblethat the GO node 201 may perform the disconnect operation S410 beforethe accept operation S405.

Referring to FIG. 11, when a timeout occurs after the first switchingdevice (node 104) joins the group 10, the first switching device (node104) disconnects from the GO node 201 (Operation S420) and sends aconnection request as a trigger to the GO node 101 of the group 10(Operation S421). The connection request from the first switching device(node 104) triggers the GO node 101 to start a switchover procedurebetween the first and second switching devices. More specifically, whenreceiving the connection request from the node 104 (first switchingdevice), the GO 101 accepts it, sends acknowledgement back to the node104 (Operations S422 and S423). When receiving the connectionacknowledgement, the first switching device (node 104) connects back tothe group 10 (Operation S424), which allows the node 104 to exchangedata within the group 10 (Operation S425). Paralleling the joiningoperations of the first switching device (node 104) in the group 10, theGO node 101 instructs the second switching device (node 202) todisconnect the group 10 and to join the group 20 (Operation S426).According to the instruction, the second switching device (node 202)disconnects from the group 10 (Operation S427) and sends a connectionrequest to the GO node 201 of the group 20 (Operation S428). The GO 201accepts it, sends acknowledgement back to the node 202 (Operations S429and S430). When receiving the connection acknowledgement, the secondswitching device (node 202) connects back to the group 20 (OperationS431), which allows the node 202 to exchange data within the group 20(Operation S432).

As described above, the first switching device (node 104) triggersdevice (client node) swapping for inter-group communication, ensuringsynchronization between the first and second switching devices. Next,synchronization between switching devices will be described by referringFIG. 12.

3.2) Synchronization Between Switching Devices

Taking the network configuration shown in FIG. 3 and the sequence shownin FIGS. 10 and 11 as an example, a mechanism of synchronization betweena first switching device belonging to a first P2P group and a secondswitching device belonging to a second P2P group will be described withreference to FIG. 12. Initially, the node 104 is connected to the firstP2P group 10 and the node 202 is connected to the second P2P group 20.In this example, it is assumed that the node 104 is the triggeringswitching device and the node 202 is the triggered switching device.

Referring to FIG. 12, the node 104 disconnects from the first P2P groupas shown in event S501 and sends a connection request to the group ownerdevice 201 of the second P2P group 20 as shown in event S502. Theconnection request in event S502 acts as the trigger to initiate theevent (S509) in the node 202. In the event S509, the node 202disconnects from the second P2P group 20. Following this, the node 104joins the second P2P group 20 as shown in event S503. The node 202 sendsa connection request to the group owner device 101 of the first P2Pgroup 10 as shown in event S510 and joins the first P2P group 10 asshown in event S511. The node 202 may participate in data communicationwith at least one node within the second P2P group 20 as shown in eventS504. Similarly, the node 202 may participate in data communication withat least one node within the first P2P group 10 as shown in event S512.Following the event S504, the node 104 disconnects from the second P2Pgroup 20 as shown in event S505 and sends a connection request to thegroup owner device 101 of the first P2P group 10 as shown in event S506.The event S506 will trigger the event S513. In the event S513, the node202 disconnects from the first P2P group 10. Following the event S513,the node 202 sends a connection request to the group owner device 201 ofthe second P2P group 20 as shown in event S514 and subsequently joinsthe second P2P group 20 as shown in event S515. The node 104 also joinsthe first P2P group 10 as shown in event S507. Then, the node 104 mayparticipate in communication with at least one node within the first P2Pgroup 10 as shown in event S508. Similarly, the node 202 may participatein communication with at least one node within the second P2P group 20as shown in event S516. The process may repeat iteratively forcommunication between the first P2P group 10 and the second P2P group20.

As described above, the first switching device 104 triggers theswitching event of the second switching device 202. Thus the firstswitching device 104 acts as the triggering device and the secondswitching device 202 acts as the triggered device, resulting insynchronization between the first and second switching devices.

4. Second Exemplary Embodiment

FIG. 13 shows an example concerning two Wi-Fi P2P groups 10 and 20operating in each other's transmission range. The node 101 is the P2P GOof the group 10. The nodes 102-104 are P2P Clients of the group 10connected to the P2P GO 101. The node 201 is the P2P GO of the group 20.The nodes 202-204 are P2P Clients of the group 20 connected to the P2PGO 201. This example illustrates a mechanism of two triggering-triggeredpairs of switching devices. The node 104 of the P2P group 10 and thenode 202 of the P2P group 20 form a triggering-triggered pair ofswitching devices and operate in a fashion similar to the description inFIG. 12. Similarly, the node 103 of the P2P group 10 and the node 203 ofthe P2P group 20 form another triggering-triggered pair of switchingdevices and also operate in a fashion similar to the description in FIG.12. There can be multiple such triggering-triggered pairs of switchingdevices between a first P2P group and a second P2P group.

As shown in FIG. 14, each such pair of triggering-triggered switchingdevices may operate independently. Thus, a first pair oftriggering-triggered switching devices may perform switching between thefirst and second P2P groups 10 and 20 at a specific switching frequencyand a second pair of triggering-triggered switching devices may performswitching at a different switching frequency. The switching frequency isrepresented by the number of switching events happening per unitinterval of time.

5. Third Exemplary Embodiment

In the network configuration as shown in FIG. 13, multipletriggering-triggered pairs may operate according to a pre-definedschedule or as instructed by a group owner device which is one of thefirst or second P2P groups 10 and 20. For example, as shown in FIG. 15,a first pair of triggering-triggered switching devices performs oneswitching event (SW) and a second pair of triggering-triggered switchingdevices is instructed to perform the next switching event between thefirst and second P2P groups 10 and 20. Thus, a firsttriggering-triggered pair (nodes 104 and 202) and a secondtriggering-triggered pair (nodes 103 and 203) may perform switching inan alternate fashion between the first and second P2P groups 10 and 20.

Where applicable, various embodiments provided by the present disclosuremay be implemented using hardware, software, or combinations of hardwareand software. Also where applicable, the various hardware componentsand/or software components set forth herein may be combined intocomposite components comprising software, hardware, and/or both withoutdeparting from the spirit of the present disclosure. Where applicable,the various hardware components and/or software components set forthherein may be separated into sub-components comprising software,hardware, or both without departing from the spirit of the presentdisclosure. In addition, where applicable, it is contemplated thatsoftware components may be implemented as hardware components, andvice-versa.

Application software in accordance with the present disclosure, such ascomputer programs executed by the device and may be stored on one ormore computer readable mediums. It is also contemplated that the stepsidentified herein may be implemented using one or more general purposeor specific purpose computers and/or computer systems, networked and/orotherwise. Where applicable, the ordering of various steps describedherein may be changed, combined into composite steps, and/or separatedinto sub-steps to provide features described herein.

Although embodiments of the present disclosure have been described,these embodiments illustrate but do not limit the disclosure. Forexample, the word “device” and “node” have been interchangeably used andmay define Group Owner, Client, or P2P device connectable to a group butnot connected to any group. It may also be noted that the application ofthe present invention to any other peer-to-peer or device-to-devicecommunication technologies should be included well within the spirit andscope of the present disclosure as hereinafter claimed.

It should also be understood that embodiments of the present disclosureshould not be limited to these embodiments but that numerousmodifications and variations may be made by one of ordinary skill in theart in accordance with the principles of the present disclosure and beincluded within the spirit and scope of the present disclosure ashereinafter claimed.

The above exemplary embodiments can be applied to wireless peer-to-peer(P2P) networks.

6. Supplementary Notes

The whole or part of the exemplary embodiments disclosed above can bedescribed as, but not limited to, the following supplementary notes.

(Supplementary Note 1)

A method of operating a wireless peer-to-peer (P2P) network including aplurality of P2P groups, comprising:

disconnecting a first device included in a first P2P group from thefirst P2P group so that the first device joins to a second P2P group;and

in synchronization with the first device switching to the second P2Pgroup, disconnecting a second device included in the second P2P groupfrom the second P2P group so that the second device joins to the firstP2P group.

(Supplementary Note 2)

The method according to supplementary note 1, wherein the first devicetriggers the second device to initiate switching between the first andsecond P2P groups.

(Supplementary Note 3)

The method according to supplementary note 1 or 2, further comprising:

exchanging data between the first device and the second P2P group andbetween the second device and the first P2P group;

after a predetermined time interval has elapsed, disconnecting the firstdevice from the second P2P group so that the first device joins back tothe first P2P group; and

in synchronization with the first device switching to the first P2Pgroup, disconnecting the second device from the first P2P group so thatthe second device joins back to the second P2P group.

(Supplementary Note 4)

The method according to any one of supplementary notes 1-3, wherein thenumber of switching events between the first and second P2P groups perunit interval of time is varied by controlling the first device.

(Supplementary Note 5)

The method according to any one of supplementary notes 1-4, wherein aplurality of pairs of triggering device and triggered device performswitching between the first and second P2P groups, each of the pairsoperating like a pair of the first and second devices.

(Supplementary Note 6)

The method according to supplementary note 5, wherein the pairs performthe switching independent of each other or as scheduled.

(Supplementary Note 7)

The method according to supplementary note 6, wherein the pairs performthe switching at different switching frequencies and/or one afteranother.

(Supplementary Note 8)

The method according to any one of supplementary notes 1-7, wherein thefirst device shares a credential of the first P2P group with the secondP2P group such that the second device is allowed to use the credentialto join the first P2P group.

(Supplementary Note 9)

The method according to any one of supplementary notes 1-7, wherein atleast one of the first device and the second device re-uses at least onecredential of at least one previous connection for switching connectionbetween the first P2P group and the second P2P group.

(Supplementary Note 10)

The method according to any one of supplementary notes 1-9, wherein atleast one of the first switching device and the second switching deviceis chosen according to a criterion such that the chosen device of onegroup is at least one of:

a device that receives highest Received Signal Strength Indicator (RSSI)from the group owner of the other group;

a device that meets at least one of predefined criteria on memory, CPUspeed, residual power, and time to stay in the wireless P2P network;

a device that has minimum average packet exchange (packet sending andreceiving) among all devices in the one group over an interval of time;and

a device not performing switching with any other neighboring group.

(Supplementary Note 11)

The method according to any one of supplementary notes 1-10, wherein atleast one of the first switching device and the second switching deviceincludes information in at least one of a connection request and aninvitation request sent to a group owner of the other group so as toenable the group owner of the other group to know that the connectionrequest is for inter-group communication based on switching.

(Supplementary Note 12)

The method according to any one of supplementary notes 1-10, wherein, atleast one of the first group owner node and the second group owner nodeshares information about impending inter-group communication with theother group owner based on switching using unicast, multicast orbroadcast mechanism.

(Supplementary Note 13)

The method according to supplementary note 11 or 12, wherein theinformation comprises at least one of:

at least one of a flag bit, a character, a string and a number;

an identification number of the native group; and

an identification number of the group owner node of the native group.

(Supplementary Note 14)

The method according to any one of supplementary notes 11-13, whereinthe information is included in a vendor specific attribute field of atleast one of the connection request and the invitation request from atleast one of the first switching device and second switching device.

(Supplementary Note 15)

The method according to any one of supplementary notes 1-14, wherein atleast one of the first device and second device supports Wi-Fi Directcapability and each P2P group is a Wi-Fi Direct group.

(Supplementary Note 16)

A system for operating a wireless peer-to-peer (P2P) network including aplurality of P2P groups, wherein

a first device included in a first P2P group disconnects from the firstP2P group so that the first device joins to a second P2P group; and

a second device included in the second P2P group, in synchronizationwith the first device switching to the second P2P group, disconnectsfrom the second P2P group so that the second device joins to the firstP2P group.

(Supplementary Note 17)

The system according to supplementary note 10, wherein the first devicetriggers the second device to initiate switching between the first andsecond P2P groups.

(Supplementary Note 18)

The system according to supplementary note 16 or 17, wherein the firstdevice exchanges data with the second P2P group and the second deviceexchanges data with the first P2P group;

after a predetermined time interval has elapsed, the first devicedisconnects from the second P2P group so that the first device joinsback to the first P2P group; and

the second device, in synchronization with the first device switching tothe firsts P2P group, disconnects from the first P2P group so that thesecond device joins back to the second P2P group.

(Supplementary Note 19)

The system according to any one of supplementary notes 16-18, whereinthe number of switching between the first and second P2P groups per unitinterval of time is varied by controlling the first device.

(Supplementary Note 20)

The system according to any one of supplementary notes 16-19, wherein aplurality of pairs of triggering device and triggered device performswitching between the first and second P2P groups, each of the pairsoperating like a pair of the first and second devices.

(Supplementary Note 21)

The system according to supplementary note 20, wherein the pairs performthe switching independent of each other or as scheduled.

(Supplementary Note 22)

The system according to supplementary note 21, wherein the pairs performthe switching at different frequencies and/or one after another.

(Supplementary Note 23)

The system according to any one of supplementary notes 16-22, whereinthe first device shares a credential of the first P2P group with thesecond P2P group such that the second device is allowed to use thecredential to join the first P2P group.

(Supplementary Note 24)

The system according to any one of supplementary notes 16-22, wherein atleast one of the first device and the second device re-uses at least onecredential of at least one previous connection for switching connectionbetween the first P2P group and the second P2P group.

(Supplementary Note 25)

The system according to any one of supplementary notes 16-24, wherein atleast one of the first switching device and the second switching deviceis chosen according to a criterion such that the chosen device of onegroup is at least one of:

a device that receives highest Received Signal Strength Indicator (RSSI)from the group owner of the other group;

a device that meets at least one of predefined criteria on memory, CPUspeed, residual power, and time to stay in the wireless P2P network;

a device that has minimum average packet exchange (packet sending andreceiving) among all devices in the one group over an interval of time,and

a device that is not performing switching with any other neighboringgroup.

(Supplementary Note 26)

The system according to any one of supplementary notes 16-25, wherein atleast one of the first switching device and the second switching deviceincludes information in at least one of a connection request and aninvitation request sent to a group owner of the other group so as toenable the group owner of the other group to know that the connectionrequest is for inter-group communication based on switching.

(Supplementary Note 27)

The system according to any one of supplementary notes 16-25, wherein,at least one of the first group owner node and the second group ownernode shares information about impending inter-group communication withthe other group owner based on switching using unicast, multicast orbroadcast mechanism.

(Supplementary Note 28)

The system according to supplementary note 26 or 27, wherein theinformation comprises at least one of:

at least one of a flag bit, a character, a string and a number;

an identification number of the native group; and

an identification number of the group owner node of the native group.

(Supplementary Note 29)

The system according to any one of supplementary notes 26-28, whereinthe information is included in a vendor specific attribute field of atleast one of the connection request and the invitation request from atleast one of the first switching device and second switching device.

(Supplementary Note 30)

The system according to any one of supplementary notes 16-29, wherein atleast one of the first device and second device supports Wi-Fi Directcapability and each P2P group is a Wi-Fi Direct group.

(Supplementary Note 31)

A device operating in one of a plurality of peer-to-peer (P2P) groupsincluded in a wireless P2P network, comprising:

a controller that is configured to disconnect from a first P2P group inresponse to reception of an instruction from a first group owner of thefirst P2P group; and

a communication controller that is configured to send a connectionrequest as a trigger for inter-group communication to a second groupowner of a second P2P group so as to join to the second P2P group,

wherein the second group owner instructs a device included in the secondP2P group to initiate connection switching from the second P2P group tothe first P2P group in synchronization with the trigger.

(Supplementary Note 32)

A device operating in one of a plurality of peer-to-peer (P2P) groupsincluded in a wireless P2P network, wherein another device included in afirst P2P group receives an instruction from a first group owner of thefirst P2P group, the device comprising:

a controller that is configured to disconnect from a second P2P group inresponse to reception of an instruction from a second group owner of thesecond P2P group, wherein the second group owner has received aconnection request as a trigger from the another device; and

a communication controller that is configured to send a connectionrequest to the first group owner of the first P2P group so as to switchits connection from the second P2P group to the first P2P group.

(Supplementary Note 33)

A non-transitory computer readable medium embodying instructions forcontrolling a device to implement a method comprising:

disconnecting from a first P2P group in response to reception of aninstruction from a first group owner of the first P2P group; and

sending a connection request as a trigger for inter-group communicationto a second group owner of a second P2P group so as to join to thesecond P2P group,

wherein the second group owner instructs a device included in the secondP2P group to initiate connection switching from the second P2P group tothe first P2P group in synchronization with the trigger.

(Supplementary Note 34)

A non-transitory computer readable medium embodying instructions forcontrolling a device to implement a method comprising:

disconnecting from a second P2P group in response to reception of aninstruction from a second group owner of the second P2P group, whereinthe second group owner has received a connection request as a triggerfrom the another device; and

sending a connection request to the first group owner of the first P2Pgroup so as to switch its connection from the second P2P group to thefirst P2P group.

REFERENCE SIGNS LIST

-   10, 20 P2P group-   101-104, 201-204 Node (device)-   201 Radio system-   202 User controller-   203 Processor-   204 Memory

What is claimed is:
 1. A method of operating a wireless peer-to-peer(P2P) network including a plurality of P2P groups, comprising:disconnecting a first device included in a first P2P group from thefirst P2P group so that the first device joins to a second P2P group;and in synchronization with the first device switching to the second P2Pgroup, disconnecting a second device included in the second P2P groupfrom the second P2P group so that the second device joins to the firstP2P group.
 2. The method according to claim 1, wherein the first devicetriggers the second device to initiate switching between the first andsecond P2P groups.
 3. The method according to claim 1, furthercomprising: exchanging data between the first device and the second P2Pgroup and between the second device and the first P2P group; after apredetermined time interval has elapsed, disconnecting the first devicefrom the second P2P group so that the first device joins back to thefirst P2P group; and in synchronization with the first device switchingto the first P2P group, disconnecting the second device from the firstP2P group so that the second device joins back to the second P2P group.4. The method according to claim 1, wherein the number of switchingevents between the first and second P2P groups per unit interval of timeis varied by controlling the first device.
 5. The method according toclaim 1, wherein a plurality of pairs of triggering device and triggereddevice perform switching between the first and second P2P groups, eachof the pairs operating like a pair of the first and second devices.6-10. (canceled)
 11. The method according to claim 5, wherein the pairsperform the switching independent of each other or as scheduled.
 12. Themethod according to claim 11, wherein the pairs perform the switching atdifferent switching frequencies and/or one after another.
 13. The methodaccording to claim 1, wherein the first device shares a credential ofthe first P2P group with the second P2P group such that the seconddevice is allowed to use the credential to join the first P2P group. 14.The method according to claim 1, wherein at least one of the firstdevice and the second device re-uses at least one credential of at leastone previous connection for switching connection between the first P2Pgroup and the second P2P group.
 15. The method according to claim 1,wherein at least one of the first switching device and the secondswitching device is chosen according to a criterion such that the chosendevice of one group is at least one of: a device that receives highestReceived Signal Strength Indicator (RSSI) from the group owner of theother group; a device that meets at least one of predefined criteria onmemory, CPU speed, residual power, and time to stay in the wireless P2Pnetwork; a device that has minimum average packet exchange (packetsending and receiving) among all devices in the one group over aninterval of time; and a device not performing switching with any otherneighboring group.
 16. The method according to claim 1, wherein at leastone of the first switching device and the second switching deviceincludes information in at least one of a connection request and aninvitation request sent to a group owner of the other group so as toenable the group owner of the other group to know that the connectionrequest is for inter-group communication based on switching.
 17. Themethod according to claim 1, wherein, at least one of the first groupowner node and the second group owner node shares information aboutimpending inter-group communication with the other group owner based onswitching using unicast, multicast or broadcast mechanism.
 18. Themethod according to claim 16, wherein the information comprises at leastone of: at least one of a flag bit, a character, a string and a number;an identification number of the native group; and an identificationnumber of the group owner node of the native group.
 19. The methodaccording to claim 16, wherein the information is included in a vendorspecific attribute field of at least one of the connection request andthe invitation request from at least one of the first switching deviceand second switching device.
 20. The method according to claim 1,wherein at least one of the first device and second device supportsWi-Fi Direct capability and each P2P group is a Wi-Fi Direct group. 21.A device operating in one of a plurality of peer-to-peer (P2P) groupsincluded in a wireless P2P network, comprising: a memory storing a setof instructions for performing inter-group communication; and aprocessor configured to execute the set of instructions to: disconnectfrom a first P2P group in response to reception of an instruction from afirst group owner of the first P2P group; and send a connection requestas a trigger for inter-group communication to a second group owner of asecond P2P group so as to join to the second P2P group, wherein thesecond group owner instructs a device included in the second P2P groupto initiate connection switching from the second P2P group to the firstP2P group in synchronization with the trigger.
 22. A device operating inone of a plurality of peer-to-peer (P2P) groups included in a wirelessP2P network, wherein another device included in a first P2P groupreceives an instruction from a first group owner of the first P2P group,the device comprising: a memory storing a set of instructions forperforming inter-group communication; and a processor configured toexecute the set of instructions to: disconnect from a second P2P groupin response to reception of an instruction from a second group owner ofthe second P2P group, wherein the second group owner has received aconnection request as a trigger from the another device; and send aconnection request to the first group owner of the first P2P group so asto switch its connection from the second P2P group to the first P2Pgroup.
 23. A non-transitory computer readable medium storing a programthat comprises instructions for a device to perform: disconnecting froma first P2P group in response to reception of an instruction from afirst group owner of the first P2P group; and sending a connectionrequest as a trigger for inter-group communication to a second groupowner of a second P2P group so as to join to the second P2P group,wherein the second group owner instructs a device included in the secondP2P group to initiate connection switching from the second P2P group tothe first P2P group in synchronization with the trigger.
 24. Anon-transitory computer readable medium storing a program that comprisesinstructions for a device to perform: disconnecting from a second P2Pgroup in response to reception of an instruction from a second groupowner of the second P2P group, wherein the second group owner hasreceived a connection request as a trigger from the another device; andsending a connection request to the first group owner of the first P2Pgroup so as to switch its connection from the second P2P group to thefirst P2P group.